Δρ Κωνσταντίνος ΚΥΡΙΑΖΟΠΟΥΛΟΣ

Διπλ. Αρχιτέκτων Μηχανικός, ΕΜΠ, 1995, Δρ Πληροφορικής, Université Paris 8, 2007

Διπλωματική εργασία: "Τεχνητή Νοημοσύνη και Αρχιτεκτονική - Πρόγραμμα CADRAM"

Προδιαγραφές, υλοποίηση και παρουσίαση εφαρμογής "Αρχιτεκτονικού Σχεδιασμού με την Βοήθεια Ηλεκτρονικού Υπολογιστή και την Μέθοδο Τοποθέτησης Ορθογωνίων (μέθοδος και πρόγραμμα CADRAM - Computer Aided Design Rectangular Allocation Method). [Κωνσταντίνος ΚΥΡΙΑΖΟΠΟΥΛΟΣ, 1995, ΕΜΠ, Σχολή Αρχιτεκτόνων Μηχανικών, καθηγ. Γ.Βενέρης, βαθμός 10.0/10.0]

Εισαγωγή

Παρουσίαση ενός προγράμματος σε Η/Υ, εφαρμογή μίας ήδη διατυπωμένης (αναλυτικά στην διάλεξη) θεωρίας και μεθόδου για την επίλυση προβλημάτων Αρχιτεκτονικού Σχεδιασμού, που εφαρμόζει τεχνικές Τεχνητής Νοημοσύνης, με σκοπό την παραγωγή όλων των διαφορετικών λύσεων. Κύριο χαρακτηριστικό της μεθόδου είναι η συνδυαστική αρχιτεκτονικών στοιχείων και των μεταξύ τους σχέσεων.

Η μέθοδος περιλαμβάνει:

α.           ένα σύστημα αναπαράστασης των Αντικειμένων με χρήση πρωτογενών σχημάτων (ορθογωνίων που εντάσσονται σε ορισμένο κάναβο)

β.           ένα σύνολο βασικών Σχέσεων μεταξύ ορθογωνίων και τελικά μεταξύ Αντικειμένων

γ.           τρεις λογικές Πράξεις (and, or, not) μέσω των οποίων μπορούν να οριστούν σύνθετες σχέσεις από επιμέρους σχέσεις

δ.           μία Γλώσσα μέσω της οποίας μπορούν να οριστούν:

o            ο Χώρος (Space) μέσα στον οποίο θα τοποθετηθούν τα Αντικείμενα

o            τα Αντικείμενα (Objects)

o            οι Σχέσεις (Relations) μεταξύ Αντικειμένων (μεταξύ τους και με τον Χώρο)

ε.            από ένα σύστημα παραγωγής των λύσεων

Το πρόγραμμα - εφαρμογή της μεθόδου περιλαμβάνει:

α.           μία τυπική γλώσσα για την περιγραφή του αρχιτεκτονικού προβλήματος, μέσω της οποίας ο Αρχιτέκτονας μπορεί να ορίσει τους κανόνες (Σχέσεις) και τα στοιχεία (Αντικείμενα) που θα χρησιμοποιήσει

β.           έναν μηχανισμό παραγωγής και αξιολόγησης λύσεων ("Γεννήτρια Λύσεων" και "Μηχανή Αξιολόγησης"), υλοποιημένο σε γλώσσα Turbo-Prolog, που δίνει όλες τις δυνατές εναλλακτικές λύσεις σύμφωνα με τις απαιτήσεις που ορίζονται από τα Αντικείμενα και τις Σχέσεις

γ.           ένα γραφικό περιβάλλον, μέσω του προγράμματος AutoCAD, με την βοήθεια του οποίου εισάγονται τα γραφικά δεδομένα και παρουσιάζονται οι τελικές λύσεις

Γλώσσες προγραμματισμού του προγράμματος CADRAM:

Το βασικό πρόγραμμα αναπτύχθηκε στην γλώσσα Turbo‑Prolog και μικρότερο μέρος του στην γλώσσα Turbo‑Pascal, ενώ το γραφικό περιβάλλον υλοποιήθηκε στην γλώσσα AutoLISP για να συνεργάζεται με το πρόγραμμα AutoCAD.

Κύρια μέρη (modules) του προγράμματος CADRAM:

o            CADRAM A-I Solver

o            CADRAM Compiler

o            AutoCADRAM Shape

o            AutoCADRAM Show

Περιγραφές - Ορισμοί μέσω του προγράμματος CADRAM:

o            Κάναβος

o            Χώρος (σχήμα, ιδιοότητες)

o            Στοιχεία (ορισμός, ιδιότητες, μέρη)

o            Πραγματικός μέρος

o            Λειτουργικός μέρος

o            Συνδετικός μέρος

o            Κανόνες των μερών

παράδειγμα

Object          BED
rectangle BR
kind REAL
from point 0,0
dimensions 4,2

Object          BED
rectangle BF
kind FUNCTIONAL
from point 1,2
dimensions 3,1

Object          BED
rectangle BC
kind CONNECTIVE
from point 0,2
dimensions 1,1

Object          BED
rectangle BF2
kind FUNCTIONAL
from point 4,0
dimensions 1,3

Object          BED
rectangle BC2
kind CONNECTIVE
from point 0,-1
dimensions 4,1

o            Σχέσεις

o            Σχέσεις μεταξύ Αντικειμένων

o            Σχέσεις Τοποθέτησης

o            Σχέσεις Ελέγχου

o            Κανόνες:
Επαφή εσωτερική
Επαφή εξωτερική
Εππικάλυψη
Εγκλεισμός
Απόσταση ίση
Απόσταση μεγαλύτερη
Απόσταση μικρότερη
Προσανατολισμός

παράδειγμα

Relation        R1
PLACE

TABLE-REAL
in EXTERNAL_CONTACT with
BED-REAL
with angles 270
and NOT MIRRORED

Relation        R2
CHECK
TABLE-REAL
in INTERNAL_CONTACT with
SPACE-REAL

Relation        R3
CHECK
TABLE-FUNCIONAL
in SECTION with
BED-FUNCIONAL

o            Σχέσεις μεταξύ Σχέσεων

o            Λογική πράξη AND

o            Λογική πράξη OR

o            Λογική πράξη NOT

παράδειγμα

Relation        CT CLOSET internal_contact_top SPACE

Relation        CR CLOSET internal_contact_right SPACE

Relation        CL CLOSET internal_contact_left SPACE

Relation        (CT and CR ) or (CT and CL)

Περιγραφή των ορισμών του σχεδιαστικού προβλήματος (της Αρχιτεκτονικής Σύνθεσης):

Συνταντικοί και Γραμματικοί κανόνες για τον Χώρο και τα Αντικείμενα:

object <NAME>   part <NAME2> kind <R/C/F> from <X1,Y1>   dim <X2,Y2>

Συνταντικοί και Γραμματικοί κανόνες για τις Σχέσεις:

relation        <RELNAME> <PLACE/CHECK> <NEW_OBJECT_NAME,NEW_OBJECT_NAME2> <RULE>/<RULE NUM> <EXISTING_OBJECT_NAME, EXISTING_OBJECT_NAME2> [with angles <0,90,180,270> mirrors        <ORIGINAL,MIRRORED>]

 

relation        <RELNAME> <ALLOF/ONEOF/NONEOF> <RELNAME2> <RELNAME3> ...

 

rules are:      EXT_CNT, DIST_MIN, DIST_MAX, INT_CNT, INT_LT, INT_RT, INT_DN, INT_UP, IN, EXT_LT, EXT_RT, EXT_DN, EXT_UP, INT

Από την φυσική γλώσσα στην γλώσσα CADRAM:

1.           Φυσική γλώσσα

"I want to put a bed B and a table T in a room R, so that the bed is in contact with the room R and the table T is in contact with the room R and the bed"

2.           Ανάλυση

"I want a Room of given dimensions and attributes"

"I want a Bed of given dimensions and attributes"

"I want a Table of given dimensions and attributes"

"I want to put the Bed in contact with Room"

"I want to put the Table in contact with Room"

"I want to put the Table in contact with Bed"

3.           Προετοιμασία τυπικής έκφρασης

Object          ROOM
rectangle R
kind REAL
from point 0,0
dimensions 10,8

Object          BED
rectangle R
kind REAL
from point 0,0
dimensions 4,2

Object          BED
rectangle F
kind FUNCTIONAL
from point 1,2
dimensions 3,1

Object          BED
rectangle C
kind CONNECTIVE
from point 0,2
dimensions 1,1

Object          TABLE
rectangle R
kind REAL
from point 0,0
dimensions 1,1

Object          TABLE
rectangle F
kind FUNCTIONAL
from point 0,1
dimensions 1,1

Relation        RELATION1
PLACE

BED, R
in INTERNAL_CONTACT with
ROOM, R
with POSSIBLE_ANGLES 0,90,180,270 DEGREES
either NO MIRRORED, OR MIRRORED

Relation        RELATION2
PLACE
TABLE, R
INSIDE
BED, C
with POSSIBLE_ANGLES 0,90,180,270 DEGREES
either NO MIRRORED, OR MIRRORED

Relation        RELATION3
CHECK
TABLE, R
in INTERNAL_CONTACT with
ROOM, R

Relation        FINAL
ALL RELATIONS OF:
RELATION1 RELATION2 RELATION3

4.           Tυπική έκφραση

object SPACE part R kind R from 0,0 dim 8,6

 

object BED part BR kind R from 0,0 dim 4,2

object BED part BC kind C from 0,2 dim 1,1

object BED part BF kind F from 1,2 dim 3,1

 

object BEDSIDE part BSR kind R from 0,0 dim 1,1

object BEDSIDE part BSF kind F from 0,1 dim 1,1

 

relation K1 PLACE BED,BR INT_CNT SPACE,R with angles 0,90,180,270 mirrors ORIGINAL,MIRRORED

relation K2 PLACE BEDSIDE,BSR IN BED,BC with angles 0,90,180,270 mirrors ORIGINAL, MIRRORED

relation K3 CHECK BEDSIDE,BSR INT_CNT SPACE,R

 

relation main ALLOF K1 K2 K3

Χρήση του προγράμματος CADRAM - Παράδειγμα χρήσης:

1.           Δημιουργία του αρχείου ορισμού "definition file" (ascii text format) με την βοήθεια του module CADRAMEditor, με on-line help για την γραμματική και το συντακτικό της γλώσσας.

2.           Μεταγλώττιση (Compilation) του αρχείου ορισμού με την βοήθεια του module DEF2DBF και μετάφραση στα κατάλληλα αρχεία για τα modules CADRAM‑4‑Solver και AutoCADRAM‑Shape.

3.           Αυτοματοποιημένη σχεδίαση των Στοιχείων, που προέρχονται από το αρχείο ορισμού, με το module AutoCADRAM‑Shape μέσα στο περιβάλλον του AutoCAD. Εδώ μπορούν να χρησιμοποιηθούν έτοιμα σύμβολα από βιβλιοθήκες και menus.

4.           Επίλυση του προβλήματος με την βοήθεια του module CADRAM‑4‑Solver. Η παραγωγή όλων των λύσεων μπορεί να παρουσιάζεται ταυτόχρονα με δύο τρόπους, κατά την διάρκεια της επίλυσης: είτε μέσω του γραφικού περιβάλλοντος της Prolog (Borland Graphics), είτε μέσα στο περιβάλλον του AutoCAD.

5.           Παρουσίαση όλων των λύσεων με την βοήθεια του module AutoCADRAM‑Show μέσα στο περιβάλλον του AutoCAD.

Μέσα σε όλα τα modules του προγράμματος CADRAM υπάρχει on-line help. Τα δύο τελευταία modules μπορούν να "τρέχουν" ταυτόχρονα, μέσω περιβάλλοντος "multi-tasking", για παράδειγμα σε "Windows".

Παράδειγμα παρουσίασης:

Ακολουθεί το πλήρες definition file, το λογότυπο CADRAM και οι κατόψεις με τα αποτελέσματα όλων των 13 εναλλακτικών λύσεων (όλα από το παράδειγμα της παρουσίασης της διπλωματικής):

 


 

; SPACE'S DEFINITION

OBJECT space      PART r      KIND r  FROM  0,0   DIM  8,6

OBJECT space      PART c      KIND c  FROM  0,0   DIM  2,2

OBJECT space      PART c2     KIND c  FROM  6,0   DIM  2,2

OBJECT space      PART c3     KIND c  FROM  3,5   DIM  2,1

OBJECT space      PART c4     KIND c  FROM  7,2   DIM  1,2

 

; OBJECTS' DEFINITION

OBJECT door       PART dr     KIND r  FROM  0,0   DIM  2,2

OBJECT window     PART wc     KIND c  FROM  0,0   DIM  2,1

OBJECT closet     PART clr    KIND r  FROM  0,0   DIM  4,1

OBJECT closet     PART clf    KIND f  FROM  0,1   DIM  4,1

OBJECT closet     PART clc    KIND c  FROM  0,-1  DIM  4,1

OBJECT closet     PART clc2   KIND c  FROM  4,0   DIM  1,1

OBJECT closet2    PART clr    KIND r  FROM  0,0   DIM  4,1

OBJECT closet2    PART clf    KIND f  FROM  0,1   DIM  4,1

OBJECT closet2    PART clc    KIND c  FROM  0,-1  DIM  4,1

OBJECT closet2    PART clc2   KIND c  FROM  4,0   DIM  1,1

OBJECT bed        PART br     KIND r  FROM  0,0   DIM  4,2

OBJECT bed        PART bc     KIND c  FROM  0,2   DIM  1,1

OBJECT bed        PART bc2    KIND c  FROM  0,-1  DIM  4,1

OBJECT bed        PART bf     KIND f  FROM  1,2   DIM  3,1

OBJECT bed        PART bf2    KIND f  FROM  4,0   DIM  1,3

OBJECT bedside    PART bsr    KIND r  FROM  0,0   DIM  1,1

OBJECT bedside    PART bsc    KIND c  FROM  0,1   DIM  1,1

OBJECT table      PART tr     KIND r  FROM  0,0   DIM  4,2

OBJECT table      PART tf     KIND f  FROM  1,3   DIM  3,1

OBJECT table      PART tc     KIND c  FROM  0,2   DIM  4,1

OBJECT table      PART tc2    KIND c  FROM  0,-1  DIM  4,1

OBJECT table      PART tc3    KIND c  FROM  -1,0  DIM  1,2

OBJECT table      PART tc4    KIND c  FROM  0,4   DIM  4,1

OBJECT chair      PART cr     KIND r  FROM  0,0   DIM  1,1

OBJECT chair      PART cc     KIND c  FROM  -1,1  DIM  4,1

OBJECT chair      PART cf     KIND f  FROM  1,0   DIM  1,1

OBJECT chair      PART cf2    KIND f  FROM  -1,0  DIM  1,1

OBJECT small      PART sr     KIND r  FROM  0,0   DIM  2,1

OBJECT small      PART sf     KIND f  FROM  0,1   DIM  2,1

 

; RELATIONS' DEFINITION

RELATION d1   place   door,dr     in      space,c    
WITH ANGLES 0 MIRRORS original

RELATION d2   place   door,dr     in      space,c2   
WITH ANGLES 180 MIRRORS mirrored

RELATION d12  oneof   d1 d2

 

RELATION w1   place   window,wc   in      space,c3   
WITH ANGLES 180 MIRRORS original

RELATION w2   place   window,wc   in      space,c4   
WITH ANGLES  90 MIRRORS original

RELATION w12  oneof   w1 w2

 

RELATION cl1  place   closet,clr  int_cnt space,r       
WITH ANGLES 0,90,180,270 MIRRORS original,mirrored

RELATION cl2  check   closet,clc  in      space,r

RELATION cl2n noneof  cl2

RELATION cl3  check   closet,clc2 in      space,r

RELATION cl3n noneof  cl3

RELATION cl4  check   closet,clr  int     window,wc

RELATION cl4n noneof  cl4

RELATION cl23 allof   cl3n cl2n cl4n

 

RELATION cll1  place   closet2,clr  int_cnt space,r  
WITH ANGLES 0,90,180,270 MIRRORS original,mirrored

RELATION cll2  check   closet2,clc  in      space,r

RELATION cll2n noneof  cll2

RELATION cll3  check   closet2,clc2 in      space,r

RELATION cll3n noneof  cll3

RELATION cll4  check   closet2,clr  int     window,wc

RELATION cll4n noneof  cll4

RELATION cll23 allof   cll3n cll2n cll4n

 

RELATION b1   place   bed,br      int_cnt space,r    
WITH ANGLES 0,90,180,270 MIRRORS original,mirrored

RELATION b3   check   bed,bc2     in      space,r

RELATION b3n  noneof  b3

RELATION b4   check   bed,bc2     in      closet,clf

RELATION b34  oneof   b3n b4

 

RELATION bs1  place   bedside,bsr in      bed,bc     
WITH ANGLES 180 MIRRORS original,mirrored

RELATION bs2  check   bedside,bsc in      bed,br

RELATION bs3  check   bedside,bsr int_cnt space,r

 

RELATION t1   place   table,tr    int_cnt space,r    
WITH ANGLES 0,90,180,270 MIRRORS original,mirrored

RELATION t2   check   window,wc   int     table,tr

RELATION t3   check   table,tc2   in      space,r

RELATION t3n  noneof  t3

RELATION t4   check   table,tc3   in      space,r

RELATION t4n  noneof  t4

RELATION t5   check   table,tc4   in      space,r

RELATION t5n  noneof  t5

RELATION t34  allof   t4n t3n

RELATION t45  allof   t5n t4n

RELATION t345 oneof   t34 t45

 

RELATION ch1  place   chair,cc    in      table,tr   
WITH ANGLES 180 MIRRORS original,mirrored

RELATION ch2  check   chair,cr    in      table,tc

 

RELATION s1   place   small,sr    int     table,tc   
WITH ANGLES 270 MIRRORS original,mirrored

RELATION s2   check   small,sf    int     table,tf

 

RELATION main allof   d12 w12 cl1 cl23 b1 b34 bs1 bs2 bs3 t1 t2
t345 ch1 ch2 s1 s2

; RELATION main allof   d12 w12 cl1 cl23 b1 b34 bs1 bs2 bs3 t1 t2
t345 ch1 ch2 s1 s2 cll1 cll23

Βιβλιογραφία

Βενέρης Γ, 1991, "Από την σχεδίαση στον σχεδιασμό και τις εφαρμογές της τεχνητής νοημοσύνης", Ο Κατασκευαστής, τ.171, σ.42-47.

Βιριράκης Λ, 1990, "Μέθοδος αρχιτεκτονικού σχεδιασμού σε συνεχή περιοχή αναζήτησης", Διδακτορική Διατριβή, Αθήνα.

Βρυχέα Α,  Μωραϊτης Κ, 1987, Αντικείμενο καθημερινής χρήσης ΙΙ (Ε.Μ.Π., ΑΘΗΝΑ).

Akin O, 1986, "A formalism for problem restructuring and resolution in design", Environment and Planning B: Planning and Design, v.9, p.95-111.

Alexander C, 1964, "Notes on the Synthesis of Form", Harvard University Press

Alty JL and Coombs MJ, 1984, Expert Systems (Concepts and examples), NCC Publications, The National Computing Centre Ltd, England.

Banham R, 1960, "Theory and Design in the first Machine Age", Architectural Press, London

Borland,  1986, Turbo Prolog, 1st Edition, USA.

Ching F, 1979, "Architecture, Form, Space & Order", Van Nostrand Reinhold

Eastman CM, 1972, "Logical methods of building design: A synthesis and review", DMG-DRS Journal: Design research and methods, v.6, n.3, p.79-87.

Korf RE, 1987, "Planning as a search: A quantitative approach", Artificial Intelligence,  v.33, p.65-88.

Le Corbusier, 1948, "Modulor"

Los M, 1973, "Spatial Design and Artificial Intelligence", University of Pennsylvania, Planning Sciences, Master Thesis (Draft) (April).

Mitchel WJ, 1975, "The theoretical foundation of computer aided architectural design", Environment and Planning B, v.2, p.127-150.

Mitchell W, 1990, "The Logic Of Architecture, Design, Computation and Cognition", ed. MIT Press

Moneo R, 1978, "On Typology", Oppositions, nº 13

Neufert Ε, 1972 Οικοδομική, Εκδοση 4, (Μ.Γκιούρδας, Αθήναι).

Newell A, Shaw JC, and Simon HA, 1959, Report on a general problem-solving program, Proceedings of international conference on information processing (UNESCO), P.256-265.

Newell A, 1966, On the analysis of human problem solving protocols, Gardin (ed) PUF. 1968, p.145-185.

Nilson NJ, 1982, Principles of Artificial Intelligence, Springler-Verlag, Berlin, Heidelberg, New York.

Panero J & Zelnik M, 1979, Human dimension & interior space (Whitney, Great Britain).

Rich E, 1983, Artificial Intelligence, McGraw_Hill Book Company, New York, St.Louis, San Francisco.

Sacredoti ED, 1974, "Planning in an Hierarchy of Abstraction Spaces", Artificial Intelligence, v.5, p.115-135.